bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Mon, 27 Sep 2021 15:53:42 +0000 (16:53 +0100)
committerGianfranco Costamagna <locutusofborg@debian.org>
Mon, 27 Sep 2021 15:53:42 +0000 (16:53 +0100)
commit3d1f212f3265a572f676641d4c34dd313e3ee656
tree95ed9fdc8b5a8af4b95e6dc8363005a8c7df0778
parentde57acf963bd748918bfa9eb160307a393862f51
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h